import http from '../utils/http.js'

/**
 * @description: 管理员获取所有用户列表
 * @return {Promise} 返回所有用户列表
 */
export async function getAllUsersApi() {
    try {
        return await http.get('/api/user/admin/list')
    } catch (error) {
        console.error('获取用户列表API请求失败:', error)
        throw error
    }
}

/**
 * @description: 管理员根据ID查询用户
 * @param {number} id 用户ID
 * @return {Promise} 返回用户详情
 */
export async function getUserByIdApi(id) {
    try {
        return await http.get(`/api/user/admin/${id}`)
    } catch (error) {
        console.error('获取用户详情API请求失败:', error)
        throw error
    }
}

/**
 * @description: 管理员更新用户信息
 * @param {number} id 用户ID
 * @param {object} user 用户信息对象
 * @return {Promise} 返回更新结果
 */
export async function updateUserApi(id, user) {
    try {
        return await http.put(`/api/user/admin/${id}`, user)
    } catch (error) {
        console.error('更新用户信息API请求失败:', error)
        throw error
    }
}

/**
 * @description: 管理员删除用户
 * @param {number} id 用户ID
 * @return {Promise} 返回删除结果
 */
export async function deleteUserApi(id) {
    try {
        return await http.delete(`/api/user/admin/${id}`)
    } catch (error) {
        console.error('删除用户API请求失败:', error)
        throw error
    }
}